<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>数据类型</title>
</head>

<body>
    <script>
        //实例: 实例对象
        //类型: 类型对象
        function Person(name, age) {//构造函数 类型
            this.name = name;
            this.age = age;
        }
        var p = new Person('tom', 12);//根据类型创建的实例对象

        //相关面试题
        //1.undefined和null的区别

        // undefined代表定义了未赋值  null代表定义并且赋值了 只是值为null
        var a;
        console.log(a);
        a = null;
        console.log(a);

        //2.什么时候给变量赋值为null呢?
        var b = null;
        //初始时:赋值为null，表示将要作为一个对象来使用
        b = ['xiaoyao', 23];
        b = null;
        //结束强:让b指向的对象成为垃圾对象(被垃圾回收器回收)


        //3.严格区分变量类型和数据类型?
        /*
         数据类型: 基本类型  和  对象类型
         变量类型: (指的是变量内存值的问题)
         基本类型  :保存的就是基本类型值
         和  
         引用类型 :保存的是地址值   
         */
    </script>
</body>

</html>